//  mockProdServer.ts
import { createProdMockServer } from 'vite-plugin-mock/es/createProdMockServer'

// 逐一导入您的mock.ts文件
// 如果使用vite.mock.config.ts，只需直接导入文件
// 可以使用 import.meta.glob功能来进行全部导入
// import user from '../mock/user.js'

const modulesFiles = import.meta.globEager('../mock/*.js')

const apis = Object.keys(modulesFiles).reduce((modules, path) => {
  // const moduleName = path.replace(/^\.\/modules\/(.*)\.\w+$/, '$1')
  const moduleValue = modulesFiles[path]?.default
  if (moduleValue) {
    // 这行代码不合适Assignment to function parameter 'modules'.eslint(no-param-reassign)
    // modules = modules.concat(moduleValue)
    // 不用此行是为了避免修改入参
    // Array.prototype.push.apply(modules, moduleValue)
    return [...modules, ...moduleValue]
  }
  return modules
}, [])
console.log(apis)

/**
 * 生产环境使用
 */
export default () => {
  createProdMockServer([...apis])
}
